Data replication involves replicating data located at a source location to a destination location. There may be any number of reasons that it is desirable to perform data replication. One possible reason to implement data replication is for the purpose of disaster recovery, where data replicated from the source to the destination may be later recovered at the destination when the source undergoes failure.
However, the process of performing data replication is made much more complicated in virtualization environments. In virtualization environments, both the source and destination systems may be implemented as clusters, where each cluster is a collection of datastores having shared resources and possibly a shared management interface. The goal of the data replication is to “stretch” the clusters so that all or part of the datastore from the source cluster is replicated to the destination cluster—so that the datastore appears to be stretched across the two clusters.
The problem is that there may be a number of different configuration differences and incompatibilities between the source and destination clusters and datastores. For example, the namespace protocol at the source datastore may be quite different from the namespace protocol at the destination datastore. Moreover, it may also be desirable to change the granularity and quantity of the data from the source cluster that is replicated to the destination cluster. With these problems, it often becomes very difficult to perform data replication in real-world virtualization environment, particularly with respect to the specific data replication policies and granularities desired by administrators of those environments.
Embodiments of the present invention provide a method, system, and computer program product for stretching datastores/clusters in a virtualization environment. Some embodiments provide an approach to perform data replication across multiple namespace protocols. In addition, some embodiments can control the granularity of the data replication such that different combinations of data subsets are replicated from one cluster to another.
Further details of aspects, objects, and advantages of the invention are described below in the detailed description, drawings, and claims. Both the foregoing general description and the following detailed description are exemplary and explanatory, and are not intended to be limiting as to the scope of the invention.